const path = require('path') //nodejs的路径模块

let NODE_ENV = process.env.NODE_ENV || 'production'
//导入 插件
let HtmlWebpackPlugin = require('html-webpack-plugin')
let { CleanWebpackPlugin } = require('clean-webpack-plugin')

module.exports = {
  entry: './src/index.js', //入口文件路径
  output: {
    //出口
    filename: NODE_ENV === 'production' ? 'end.[hash].min.js' : 'end.[hash].js',
    path: path.resolve(__dirname, 'dist')
  },
  mode: NODE_ENV,
  plugins: [
    //使用插件
    new HtmlWebpackPlugin({
      template: './public/index.html', //指定自己的html文件
      filename: 'index.html', //生成的html的文件名称
      //hash:true,//给引入的文添加hash值
      minify: {
        collapseWhitespace: true, //去掉html内容空格
        removeComments: true, //去掉注释
        removeAttributeQuotes: true, //去掉属性的引号
        removeEmptyAttributes: true //属性值为空的去掉
      }
    }),
    new CleanWebpackPlugin()
  ],
  devServer: {
    port: '8080', //端口号
    host: '127.0.0.1', //域名
    static: {
      //打开页面的路径
      directory: path.join(__dirname, 'dist')
    },
    hot: true, //是否热更新
    open: true, //是否自动打开页面
    proxy: {
      //配置跨域代理
      '/': {
        target: 'https://www.jianshu.com',
        changeOrigin: true //伪装访问源
      }
    }
  }
}
